package com.ruoyi.system.mapper;

import org.apache.ibatis.annotations.Param;
import com.ruoyi.system.domain.estate.Resident;
import com.ruoyi.common.core.domain.entity.SysUser;

/**
 * 用户和住户关联Mapper接口
 */
public interface SysUserResidentMapper {
    /**
     * 根据用户ID查询关联的住户
     * 
     * @param userId 用户ID
     * @return 住户信息
     */
    public Resident selectResidentByUserId(Long userId);
    
    /**
     * 根据住户ID查询关联的用户
     * 
     * @param residentId 住户ID
     * @return 用户信息
     */
    public SysUser selectUserByResidentId(Long residentId);
    
    /**
     * 新增用户和住户关联
     * 
     * @param userId 用户ID
     * @param residentId 住户ID
     * @param createBy 创建者
     * @return 结果
     */
    public int insertUserResident(@Param("userId") Long userId, @Param("residentId") Long residentId, @Param("createBy") String createBy);
    
    /**
     * 删除用户和住户关联
     * 
     * @param userId 用户ID
     * @return 结果
     */
    public int deleteUserResidentByUserId(Long userId);
    
    /**
     * 删除住户和用户关联
     * 
     * @param residentId 住户ID
     * @return 结果
     */
    public int deleteUserResidentByResidentId(Long residentId);
} 